package com.design.yjx.factory;

/**
 * @author yuanjianxin
 * @date 2017/8/3 15:17
 * 披萨店
 */
public abstract class PizzaStore {

    //2个方法， 一个是披萨制作，一个是获取披萨具体披萨
    public Pizza orderPizza(String type){
        Pizza pizza = createPizza(type);
        pizza.prepare();
        pizza.bake();
        pizza.cut();
        pizza.box();
        return pizza;
    }

    //抽象方法，子类 实现具体的创建过程，调用方不需要关心具体实现
    protected abstract Pizza createPizza(String type);


}
